<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>libnetconf: NETCONF Session</title>

<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  <td id="projectlogo"><img alt="Logo" src="../../cesnet-logo-125.png"/></td>
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">libnetconf
   &#160;<span id="projectnumber">0.1.1</span>
   </div>
   <div id="projectbrief">NETCONF library</div>
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.8.0-20120409 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="../../index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="../../pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="../../modules.html"><span>Modules</span></a></li>
      <li><a href="../../files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="../../search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('db/d52/group__session.html','../../');
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">NETCONF Session</div>  </div>
</div><!--header-->
<div class="contents">

<p>libnetconf's functions for handling NETCONF sessions.  
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga076533ff0185f0be79fa9edbed22e0b7"><td class="memItemLeft" align="right" valign="top">typedef long long unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga076533ff0185f0be79fa9edbed22e0b7">nc_msgid</a></td></tr>
<tr class="memdesc:ga076533ff0185f0be79fa9edbed22e0b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type representing NETCONF message-id attribute.  <a href="#ga076533ff0185f0be79fa9edbed22e0b7"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga9fba5da8e4c50d2427d0d24e8e7b630c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga9fba5da8e4c50d2427d0d24e8e7b630c">NC_SESSION_STATUS</a> { <br/>
&#160;&#160;<a class="el" href="../../db/d52/group__session.html#gga9fba5da8e4c50d2427d0d24e8e7b630ca4d07b03d91d5e589af9f17fb88fc6922">NC_SESSION_STATUS_ERROR</a> =  -1, 
<a class="el" href="../../db/d52/group__session.html#gga9fba5da8e4c50d2427d0d24e8e7b630ca7f69f00ab7d6af9665f6094c45654502">NC_SESSION_STATUS_STARTUP</a> =  0, 
<a class="el" href="../../db/d52/group__session.html#gga9fba5da8e4c50d2427d0d24e8e7b630ca56a15c8d7ae66a3bf02a13607210598c">NC_SESSION_STATUS_WORKING</a> =  1, 
<a class="el" href="../../db/d52/group__session.html#gga9fba5da8e4c50d2427d0d24e8e7b630ca9fe6e4f2dd207f6a66382f8ade448e78">NC_SESSION_STATUS_CLOSED</a> =  2, 
<br/>
&#160;&#160;<a class="el" href="../../db/d52/group__session.html#gga9fba5da8e4c50d2427d0d24e8e7b630ca3a417a51dfb315ebb7d1427357a838b2">NC_SESSION_STATUS_DUMMY</a> =  3
<br/>
 }</td></tr>
<tr class="memdesc:ga9fba5da8e4c50d2427d0d24e8e7b630c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enumeration of possible states of the NETCONF session.  <a href="../../db/d52/group__session.html#ga9fba5da8e4c50d2427d0d24e8e7b630c">More...</a><br/></td></tr>
<tr class="memitem:gad9081cbe1edde22e8612e07ba4c3be10"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gad9081cbe1edde22e8612e07ba4c3be10">NC_SSH_AUTH_TYPE</a> { <a class="el" href="../../db/d52/group__session.html#ggad9081cbe1edde22e8612e07ba4c3be10a33741824ba5809f9e29b99d68e1bb6a3">NC_SSH_AUTH_PUBLIC_KEYS</a> =  1, 
<a class="el" href="../../db/d52/group__session.html#ggad9081cbe1edde22e8612e07ba4c3be10a57ebf13ab1802ab10650d4c4c77e7eef">NC_SSH_AUTH_PASSWORD</a> =  2, 
<a class="el" href="../../db/d52/group__session.html#ggad9081cbe1edde22e8612e07ba4c3be10a497854e455f81123847c1ba089c40158">NC_SSH_AUTH_INTERACTIVE</a> =  4
 }</td></tr>
<tr class="memdesc:gad9081cbe1edde22e8612e07ba4c3be10"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available SSH authentication mechanisms.  <a href="../../db/d52/group__session.html#gad9081cbe1edde22e8612e07ba4c3be10">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gacb6042fe2f3cfe5d79e01de599c546eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gacb6042fe2f3cfe5d79e01de599c546eb">nc_callback_sshauth_interactive</a> (void(*func)(const char *name, int name_len, const char *instruction, int instruction_len, int num_prompts, const LIBSSH2_USERAUTH_KBDINT_PROMPT *prompts, LIBSSH2_USERAUTH_KBDINT_RESPONSE *responses, void **abstract))</td></tr>
<tr class="memdesc:gacb6042fe2f3cfe5d79e01de599c546eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set callback function for passing user credentials into libssh2's keyboard-interactive authentication method.  <a href="#gacb6042fe2f3cfe5d79e01de599c546eb"></a><br/></td></tr>
<tr class="memitem:ga28299d575ef4e234ed96bad5c4f086fb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga28299d575ef4e234ed96bad5c4f086fb">nc_callback_sshauth_password</a> (char *(*func)(const char *username, const char *hostname))</td></tr>
<tr class="memdesc:ga28299d575ef4e234ed96bad5c4f086fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set callback function for passing user password into libssh2's password authentication method when connecting to 'hostname' as 'username'.  <a href="#ga28299d575ef4e234ed96bad5c4f086fb"></a><br/></td></tr>
<tr class="memitem:ga81ef9b1c1949bbffd86cbfd9aa159726"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga81ef9b1c1949bbffd86cbfd9aa159726">nc_callback_sshauth_passphrase</a> (char *(*func)(const char *username, const char *hostname, const char *priv_key_file))</td></tr>
<tr class="memdesc:ga81ef9b1c1949bbffd86cbfd9aa159726"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set callback function for passing user password into libssh2's publickey authentication method when connecting to 'hostname' as 'username'.  <a href="#ga81ef9b1c1949bbffd86cbfd9aa159726"></a><br/></td></tr>
<tr class="memitem:ga9810aff5060e374925933d41913fbe5a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga9810aff5060e374925933d41913fbe5a">nc_callback_ssh_host_authenticity_check</a> (int(*func)(const char *hostname, int keytype, const char *fingerprint))</td></tr>
<tr class="memdesc:ga9810aff5060e374925933d41913fbe5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set callback function to authorize authenticity of an unknown host.  <a href="#ga9810aff5060e374925933d41913fbe5a"></a><br/></td></tr>
<tr class="memitem:gae521c81f448de075a84f62388320ebae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gae521c81f448de075a84f62388320ebae">nc_set_publickey_path</a> (const char *path)</td></tr>
<tr class="memdesc:gae521c81f448de075a84f62388320ebae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set path to publickey file used in case of SSH authentication via publickey mechanism.  <a href="#gae521c81f448de075a84f62388320ebae"></a><br/></td></tr>
<tr class="memitem:ga66beddc668fcc5c3699165bf3d3fd089"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga66beddc668fcc5c3699165bf3d3fd089">nc_set_privatekey_path</a> (const char *path)</td></tr>
<tr class="memdesc:ga66beddc668fcc5c3699165bf3d3fd089"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set path to privatekey file used in case of SSH authentication via publickey mechanism.  <a href="#ga66beddc668fcc5c3699165bf3d3fd089"></a><br/></td></tr>
<tr class="memitem:gad821a04ee9dc04bbed04ea1d138afbed"><td class="memItemLeft" align="right" valign="top">struct nc_session *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gad821a04ee9dc04bbed04ea1d138afbed">nc_session_dummy</a> (const char *sid, const char *username, struct nc_cpblts *capabilities)</td></tr>
<tr class="memdesc:gad821a04ee9dc04bbed04ea1d138afbed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create disconnected session structure.  <a href="#gad821a04ee9dc04bbed04ea1d138afbed"></a><br/></td></tr>
<tr class="memitem:ga20b9940ed7af543a05b4bef6e871cedd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga20b9940ed7af543a05b4bef6e871cedd">nc_session_close</a> (struct nc_session *session, const char *msg)</td></tr>
<tr class="memdesc:ga20b9940ed7af543a05b4bef6e871cedd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Close NETCONF connection with the server.  <a href="#ga20b9940ed7af543a05b4bef6e871cedd"></a><br/></td></tr>
<tr class="memitem:gaa5994f45a7031dc931bdf4a3acebedee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gaa5994f45a7031dc931bdf4a3acebedee">nc_session_free</a> (struct nc_session *session)</td></tr>
<tr class="memdesc:gaa5994f45a7031dc931bdf4a3acebedee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cleanup the session structure and free all allocated resources.  <a href="#gaa5994f45a7031dc931bdf4a3acebedee"></a><br/></td></tr>
<tr class="memitem:gacebd018e30c3eeb0638bbb428a1741b4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../db/d52/group__session.html#ga9fba5da8e4c50d2427d0d24e8e7b630c">NC_SESSION_STATUS</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gacebd018e30c3eeb0638bbb428a1741b4">nc_session_get_status</a> (const struct nc_session *session)</td></tr>
<tr class="memdesc:gacebd018e30c3eeb0638bbb428a1741b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get information about the session current status.  <a href="#gacebd018e30c3eeb0638bbb428a1741b4"></a><br/></td></tr>
<tr class="memitem:gac8ea61702127df024c037869feb72d97"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gac8ea61702127df024c037869feb72d97">nc_session_get_version</a> (const struct nc_session *session)</td></tr>
<tr class="memdesc:gac8ea61702127df024c037869feb72d97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get NETCONF protocol version used in the given session.  <a href="#gac8ea61702127df024c037869feb72d97"></a><br/></td></tr>
<tr class="memitem:ga826890ed745633bc2d31a53971dada32"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga826890ed745633bc2d31a53971dada32">nc_session_get_eventfd</a> (const struct nc_session *session)</td></tr>
<tr class="memdesc:ga826890ed745633bc2d31a53971dada32"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get input file descriptor to asynchronous control of input events.  <a href="#ga826890ed745633bc2d31a53971dada32"></a><br/></td></tr>
<tr class="memitem:ga91012cb5ae50651916ee2239661d7603"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga91012cb5ae50651916ee2239661d7603">nc_session_get_id</a> (const struct nc_session *session)</td></tr>
<tr class="memdesc:ga91012cb5ae50651916ee2239661d7603"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get NETCONF session ID.  <a href="#ga91012cb5ae50651916ee2239661d7603"></a><br/></td></tr>
<tr class="memitem:ga6399681dfce6e139cc5707af25d20bb3"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga6399681dfce6e139cc5707af25d20bb3">nc_session_get_host</a> (const struct nc_session *session)</td></tr>
<tr class="memdesc:ga6399681dfce6e139cc5707af25d20bb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get NETCONF session host.  <a href="#ga6399681dfce6e139cc5707af25d20bb3"></a><br/></td></tr>
<tr class="memitem:ga09bec340611b4b99c8c1bfb2ef3992d6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga09bec340611b4b99c8c1bfb2ef3992d6">nc_session_get_port</a> (const struct nc_session *session)</td></tr>
<tr class="memdesc:ga09bec340611b4b99c8c1bfb2ef3992d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get NETCONF session port number.  <a href="#ga09bec340611b4b99c8c1bfb2ef3992d6"></a><br/></td></tr>
<tr class="memitem:gabdd090cbc50a8f7db58e5be8062296d6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gabdd090cbc50a8f7db58e5be8062296d6">nc_session_get_user</a> (const struct nc_session *session)</td></tr>
<tr class="memdesc:gabdd090cbc50a8f7db58e5be8062296d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get NETCONF session username.  <a href="#gabdd090cbc50a8f7db58e5be8062296d6"></a><br/></td></tr>
<tr class="memitem:ga09bdf1d9eacf9f53bf3f05557ffe0821"><td class="memItemLeft" align="right" valign="top">struct nc_cpblts *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga09bdf1d9eacf9f53bf3f05557ffe0821">nc_session_get_cpblts</a> (const struct nc_session *session)</td></tr>
<tr class="memdesc:ga09bdf1d9eacf9f53bf3f05557ffe0821"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get NULL terminated list of capabilities associated with the session.  <a href="#ga09bdf1d9eacf9f53bf3f05557ffe0821"></a><br/></td></tr>
<tr class="memitem:gae8220136acd191591ad25d6849f0b59c"><td class="memItemLeft" align="right" valign="top">struct nc_cpblts *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gae8220136acd191591ad25d6849f0b59c">nc_cpblts_new</a> (char *const *list)</td></tr>
<tr class="memdesc:gae8220136acd191591ad25d6849f0b59c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create new NETCONF capabilities structure.  <a href="#gae8220136acd191591ad25d6849f0b59c"></a><br/></td></tr>
<tr class="memitem:ga6465c58b3ca057b46655d5ffa90caff3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga6465c58b3ca057b46655d5ffa90caff3">nc_cpblts_free</a> (struct nc_cpblts *c)</td></tr>
<tr class="memdesc:ga6465c58b3ca057b46655d5ffa90caff3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Free NETCONF capabilities structure.  <a href="#ga6465c58b3ca057b46655d5ffa90caff3"></a><br/></td></tr>
<tr class="memitem:ga2ea9b318015206d886c7e54386fc85e3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga2ea9b318015206d886c7e54386fc85e3">nc_cpblts_add</a> (struct nc_cpblts *capabilities, const char *capability_string)</td></tr>
<tr class="memdesc:ga2ea9b318015206d886c7e54386fc85e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add another one capability string into the NETCONF capabilities structure.  <a href="#ga2ea9b318015206d886c7e54386fc85e3"></a><br/></td></tr>
<tr class="memitem:gacb59cf4fa78bf02c22afac395acf0693"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gacb59cf4fa78bf02c22afac395acf0693">nc_cpblts_remove</a> (struct nc_cpblts *capabilities, const char *capability_string)</td></tr>
<tr class="memdesc:gacb59cf4fa78bf02c22afac395acf0693"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove specified capability string from the NETCONF capabilities structure.  <a href="#gacb59cf4fa78bf02c22afac395acf0693"></a><br/></td></tr>
<tr class="memitem:gaa8325078c33d25a7cf48e1ed9d417ff4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gaa8325078c33d25a7cf48e1ed9d417ff4">nc_cpblts_enabled</a> (const struct nc_session *session, const char *capability_string)</td></tr>
<tr class="memdesc:gaa8325078c33d25a7cf48e1ed9d417ff4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the given capability is supported by the session.  <a href="#gaa8325078c33d25a7cf48e1ed9d417ff4"></a><br/></td></tr>
<tr class="memitem:gabed55135f1868bef5f266737b8862aa4"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gabed55135f1868bef5f266737b8862aa4">nc_cpblts_get</a> (const struct nc_cpblts *c, const char *capability_string)</td></tr>
<tr class="memdesc:gabed55135f1868bef5f266737b8862aa4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get complete capability string including parameters.  <a href="#gabed55135f1868bef5f266737b8862aa4"></a><br/></td></tr>
<tr class="memitem:gae92c774e940114b4733f85e186d84620"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gae92c774e940114b4733f85e186d84620">nc_cpblts_iter_start</a> (struct nc_cpblts *c)</td></tr>
<tr class="memdesc:gae92c774e940114b4733f85e186d84620"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move NETCONF capabilities structure iterator to the beginning of the capability strings list.  <a href="#gae92c774e940114b4733f85e186d84620"></a><br/></td></tr>
<tr class="memitem:gaea2ced8d4e5f2cc9971680e49f876c58"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gaea2ced8d4e5f2cc9971680e49f876c58">nc_cpblts_iter_next</a> (struct nc_cpblts *c)</td></tr>
<tr class="memdesc:gaea2ced8d4e5f2cc9971680e49f876c58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the next capability string from the given NETCONF capabilities structure.  <a href="#gaea2ced8d4e5f2cc9971680e49f876c58"></a><br/></td></tr>
<tr class="memitem:ga79a7aea77cbfe29535eb83a6e5c60419"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga79a7aea77cbfe29535eb83a6e5c60419">nc_cpblts_count</a> (const struct nc_cpblts *c)</td></tr>
<tr class="memdesc:ga79a7aea77cbfe29535eb83a6e5c60419"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get number of capabilities in structure.  <a href="#ga79a7aea77cbfe29535eb83a6e5c60419"></a><br/></td></tr>
<tr class="memitem:ga6f39a278e3d907a0b26878df332ebc71"><td class="memItemLeft" align="right" valign="top">struct nc_cpblts *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga6f39a278e3d907a0b26878df332ebc71">nc_session_get_cpblts_default</a> ()</td></tr>
<tr class="memdesc:ga6f39a278e3d907a0b26878df332ebc71"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get NULL terminated list of default capabilities supported by libnetconf.  <a href="#ga6f39a278e3d907a0b26878df332ebc71"></a><br/></td></tr>
<tr class="memitem:ga13119fdaa84544bf254bdb35ffdf83e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#ga13119fdaa84544bf254bdb35ffdf83e0">nc_ssh_pref</a> (<a class="el" href="../../db/d52/group__session.html#gad9081cbe1edde22e8612e07ba4c3be10">NC_SSH_AUTH_TYPE</a> type, short int preference)</td></tr>
<tr class="memdesc:ga13119fdaa84544bf254bdb35ffdf83e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set preference of the SSH authentication methods.  <a href="#ga13119fdaa84544bf254bdb35ffdf83e0"></a><br/></td></tr>
<tr class="memitem:gae3858d998d19cb2fb700b15fdf602f23"><td class="memItemLeft" align="right" valign="top">struct nc_session *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gae3858d998d19cb2fb700b15fdf602f23">nc_session_connect</a> (const char *host, unsigned short port, const char *username, const struct nc_cpblts *cpblts)</td></tr>
<tr class="memdesc:gae3858d998d19cb2fb700b15fdf602f23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create NETCONF session to the specified server.  <a href="#gae3858d998d19cb2fb700b15fdf602f23"></a><br/></td></tr>
<tr class="memitem:gad0e758dfee764ae9c2a032e0151c6707"><td class="memItemLeft" align="right" valign="top">struct nc_session *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d52/group__session.html#gad0e758dfee764ae9c2a032e0151c6707">nc_session_accept</a> (const struct nc_cpblts *capabilities)</td></tr>
<tr class="memdesc:gad0e758dfee764ae9c2a032e0151c6707"><td class="mdescLeft">&#160;</td><td class="mdescRight">Accept NETCONF session from a client.  <a href="#gad0e758dfee764ae9c2a032e0151c6707"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p>libnetconf's functions for handling NETCONF sessions. </p>
<hr/><h2>Typedef Documentation</h2>
<a class="anchor" id="ga076533ff0185f0be79fa9edbed22e0b7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef long long unsigned int <a class="el" href="../../db/d52/group__session.html#ga076533ff0185f0be79fa9edbed22e0b7">nc_msgid</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Type representing NETCONF message-id attribute. </p>

<p>Definition at line <a class="el" href="../../d3/d7a/netconf_8h_source.html#l00061">61</a> of file <a class="el" href="../../d3/d7a/netconf_8h_source.html">netconf.h</a>.</p>

</div>
</div>
<hr/><h2>Enumeration Type Documentation</h2>
<a class="anchor" id="ga9fba5da8e4c50d2427d0d24e8e7b630c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="../../db/d52/group__session.html#ga9fba5da8e4c50d2427d0d24e8e7b630c">NC_SESSION_STATUS</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Enumeration of possible states of the NETCONF session. </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="gga9fba5da8e4c50d2427d0d24e8e7b630ca4d07b03d91d5e589af9f17fb88fc6922"></a>NC_SESSION_STATUS_ERROR</em>&nbsp;</td><td>
<p>undefined status or error return code </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga9fba5da8e4c50d2427d0d24e8e7b630ca7f69f00ab7d6af9665f6094c45654502"></a>NC_SESSION_STATUS_STARTUP</em>&nbsp;</td><td>
<p>session is setting up </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga9fba5da8e4c50d2427d0d24e8e7b630ca56a15c8d7ae66a3bf02a13607210598c"></a>NC_SESSION_STATUS_WORKING</em>&nbsp;</td><td>
<p>session is established and ready to work </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga9fba5da8e4c50d2427d0d24e8e7b630ca9fe6e4f2dd207f6a66382f8ade448e78"></a>NC_SESSION_STATUS_CLOSED</em>&nbsp;</td><td>
<p>session was closed and could not be used to communication </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga9fba5da8e4c50d2427d0d24e8e7b630ca3a417a51dfb315ebb7d1427357a838b2"></a>NC_SESSION_STATUS_DUMMY</em>&nbsp;</td><td>
<p>session is DUMMY, only holds information, does not provide connection </p>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="../../d3/d7a/netconf_8h_source.html#l00085">85</a> of file <a class="el" href="../../d3/d7a/netconf_8h_source.html">netconf.h</a>.</p>

</div>
</div>
<a class="anchor" id="gad9081cbe1edde22e8612e07ba4c3be10"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="../../db/d52/group__session.html#gad9081cbe1edde22e8612e07ba4c3be10">NC_SSH_AUTH_TYPE</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Available SSH authentication mechanisms. </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="ggad9081cbe1edde22e8612e07ba4c3be10a33741824ba5809f9e29b99d68e1bb6a3"></a>NC_SSH_AUTH_PUBLIC_KEYS</em>&nbsp;</td><td>
<p>SSH user authorization via publickeys </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="ggad9081cbe1edde22e8612e07ba4c3be10a57ebf13ab1802ab10650d4c4c77e7eef"></a>NC_SSH_AUTH_PASSWORD</em>&nbsp;</td><td>
<p>SSH user authorization via password </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="ggad9081cbe1edde22e8612e07ba4c3be10a497854e455f81123847c1ba089c40158"></a>NC_SSH_AUTH_INTERACTIVE</em>&nbsp;</td><td>
<p>interactive SSH user authorization </p>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="../../d8/dd3/ssh_8h_source.html#l00049">49</a> of file <a class="el" href="../../d8/dd3/ssh_8h_source.html">ssh.h</a>.</p>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gacb6042fe2f3cfe5d79e01de599c546eb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="../../db/d52/group__session.html#gacb6042fe2f3cfe5d79e01de599c546eb">nc_callback_sshauth_interactive</a> </td>
          <td>(</td>
          <td class="paramtype">void(*)(const char *name, int name_len, const char *instruction, int instruction_len, int num_prompts, const LIBSSH2_USERAUTH_KBDINT_PROMPT *prompts, LIBSSH2_USERAUTH_KBDINT_RESPONSE *responses, void **abstract)&#160;</td>
          <td class="paramname"><em>func</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set callback function for passing user credentials into libssh2's keyboard-interactive authentication method. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">func</td><td>Callback function to use. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga28299d575ef4e234ed96bad5c4f086fb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="../../db/d52/group__session.html#ga28299d575ef4e234ed96bad5c4f086fb">nc_callback_sshauth_password</a> </td>
          <td>(</td>
          <td class="paramtype">char *(*)(const char *username, const char *hostname)&#160;</td>
          <td class="paramname"><em>func</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set callback function for passing user password into libssh2's password authentication method when connecting to 'hostname' as 'username'. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">func</td><td>Callback function to use. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga81ef9b1c1949bbffd86cbfd9aa159726"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="../../db/d52/group__session.html#ga81ef9b1c1949bbffd86cbfd9aa159726">nc_callback_sshauth_passphrase</a> </td>
          <td>(</td>
          <td class="paramtype">char *(*)(const char *username, const char *hostname, const char *priv_key_file)&#160;</td>
          <td class="paramname"><em>func</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set callback function for passing user password into libssh2's publickey authentication method when connecting to 'hostname' as 'username'. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">func</td><td>Callback function to use. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga9810aff5060e374925933d41913fbe5a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="../../db/d52/group__session.html#ga9810aff5060e374925933d41913fbe5a">nc_callback_ssh_host_authenticity_check</a> </td>
          <td>(</td>
          <td class="paramtype">int(*)(const char *hostname, int keytype, const char *fingerprint)&#160;</td>
          <td class="paramname"><em>func</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set callback function to authorize authenticity of an unknown host. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">func</td><td>Callback function to use. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gae521c81f448de075a84f62388320ebae"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="../../db/d52/group__session.html#gae521c81f448de075a84f62388320ebae">nc_set_publickey_path</a> </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set path to publickey file used in case of SSH authentication via publickey mechanism. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>Path to the file to use. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga66beddc668fcc5c3699165bf3d3fd089"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="../../db/d52/group__session.html#ga66beddc668fcc5c3699165bf3d3fd089">nc_set_privatekey_path</a> </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set path to privatekey file used in case of SSH authentication via publickey mechanism. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td></td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gad821a04ee9dc04bbed04ea1d138afbed"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">struct nc_session* <a class="el" href="../../db/d52/group__session.html#gad821a04ee9dc04bbed04ea1d138afbed">nc_session_dummy</a> </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>sid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>username</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct nc_cpblts *&#160;</td>
          <td class="paramname"><em>capabilities</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">read</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create disconnected session structure. </p>
<p>This creates dummy session structure which is not supposed to pass NETCONF messages between client and server. Instead, it can be successfully used by server (e.g. detached process that doesn't hold the real session structure) to access NETCONF datastores via libnetconf.</p>
<p>All required parameters can be obtained from the real session structure by the session getter functions (<a class="el" href="../../db/d52/group__session.html#ga91012cb5ae50651916ee2239661d7603" title="Get NETCONF session ID.">nc_session_get_id()</a>, <a class="el" href="../../db/d52/group__session.html#gabdd090cbc50a8f7db58e5be8062296d6" title="Get NETCONF session username.">nc_session_get_user()</a> and <a class="el" href="../../db/d52/group__session.html#ga09bdf1d9eacf9f53bf3f05557ffe0821" title="Get NULL terminated list of capabilities associated with the session.">nc_session_get_cpblts()</a>). NULL values are not allowed.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">sid</td><td>Session ID. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">username</td><td>Name of the user holding the session. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">capabilities</td><td>List of capabilities supported by the session. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Structure describing a dummy NETCONF session or NULL in case of error. </dd></dl>

</div>
</div>
<a class="anchor" id="ga20b9940ed7af543a05b4bef6e871cedd"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="../../db/d52/group__session.html#ga20b9940ed7af543a05b4bef6e871cedd">nc_session_close</a> </td>
          <td>(</td>
          <td class="paramtype">struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>msg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Close NETCONF connection with the server. </p>
<p>Only <a class="el" href="../../db/d52/group__session.html#gaa5994f45a7031dc931bdf4a3acebedee" title="Cleanup the session structure and free all allocated resources.">nc_session_free()</a> and <a class="el" href="../../db/d52/group__session.html#gacebd018e30c3eeb0638bbb428a1741b4" title="Get information about the session current status.">nc_session_get_status()</a> functions are allowed after this call.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>Session to close. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">msg</td><td>Human readable reason for SSH session disconnection. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaa5994f45a7031dc931bdf4a3acebedee"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="../../db/d52/group__session.html#gaa5994f45a7031dc931bdf4a3acebedee">nc_session_free</a> </td>
          <td>(</td>
          <td class="paramtype">struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Cleanup the session structure and free all allocated resources. </p>
<p>Do not use given session structure after this call.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>Session to free. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gacebd018e30c3eeb0638bbb428a1741b4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../db/d52/group__session.html#ga9fba5da8e4c50d2427d0d24e8e7b630c">NC_SESSION_STATUS</a> <a class="el" href="../../db/d52/group__session.html#gacebd018e30c3eeb0638bbb428a1741b4">nc_session_get_status</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get information about the session current status. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>NETCONF session. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>NETCONF session status. </dd></dl>

</div>
</div>
<a class="anchor" id="gac8ea61702127df024c037869feb72d97"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="../../db/d52/group__session.html#gac8ea61702127df024c037869feb72d97">nc_session_get_version</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get NETCONF protocol version used in the given session. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>NETCONF session structure </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>NETCONF protocol version, 0 for 1.0, 1 for 1.1 </dd></dl>

</div>
</div>
<a class="anchor" id="ga826890ed745633bc2d31a53971dada32"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="../../db/d52/group__session.html#ga826890ed745633bc2d31a53971dada32">nc_session_get_eventfd</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get input file descriptor to asynchronous control of input events. </p>
<p>Caller must avoid direct reading from the returned file descriptor. It is supposed to be used only by select, poll, epoll or an event library (e.g. libevent).</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>NETCONF session structure </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Input file descriptor of the communication channel. </dd></dl>

</div>
</div>
<a class="anchor" id="ga91012cb5ae50651916ee2239661d7603"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="../../db/d52/group__session.html#ga91012cb5ae50651916ee2239661d7603">nc_session_get_id</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get NETCONF session ID. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>NETCONF session structure </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Constant string identifying NETCONF session. </dd></dl>

</div>
</div>
<a class="anchor" id="ga6399681dfce6e139cc5707af25d20bb3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="../../db/d52/group__session.html#ga6399681dfce6e139cc5707af25d20bb3">nc_session_get_host</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get NETCONF session host. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>NETCONF session structure </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Constant string identifying NETCONF session server host. </dd></dl>

</div>
</div>
<a class="anchor" id="ga09bec340611b4b99c8c1bfb2ef3992d6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="../../db/d52/group__session.html#ga09bec340611b4b99c8c1bfb2ef3992d6">nc_session_get_port</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get NETCONF session port number. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>NETCONF session structure </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Constant string identifying NETCONF session server host. </dd></dl>

</div>
</div>
<a class="anchor" id="gabdd090cbc50a8f7db58e5be8062296d6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="../../db/d52/group__session.html#gabdd090cbc50a8f7db58e5be8062296d6">nc_session_get_user</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get NETCONF session username. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>NETCONF session structure </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Constant string identifying NETCONF session server host. </dd></dl>

</div>
</div>
<a class="anchor" id="ga09bdf1d9eacf9f53bf3f05557ffe0821"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">struct nc_cpblts* <a class="el" href="../../db/d52/group__session.html#ga09bdf1d9eacf9f53bf3f05557ffe0821">nc_session_get_cpblts</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">read</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get NULL terminated list of capabilities associated with the session. </p>
<p>Returned list is a copy of the original list associated with the session. Caller is supposed to free all returned strings.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>NETCONF session structure </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>NETCONF capabilities structure containing capabilities associated with the given session. NULL is returned on error. </dd></dl>

</div>
</div>
<a class="anchor" id="gae8220136acd191591ad25d6849f0b59c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">struct nc_cpblts* <a class="el" href="../../db/d52/group__session.html#gae8220136acd191591ad25d6849f0b59c">nc_cpblts_new</a> </td>
          <td>(</td>
          <td class="paramtype">char *const *&#160;</td>
          <td class="paramname"><em>list</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">read</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create new NETCONF capabilities structure. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">list</td><td>NULL terminated list of capabilities strings to initially add into the NETCONF capabilities structure. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Created NETCONF capabilities structure. </dd></dl>

</div>
</div>
<a class="anchor" id="ga6465c58b3ca057b46655d5ffa90caff3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="../../db/d52/group__session.html#ga6465c58b3ca057b46655d5ffa90caff3">nc_cpblts_free</a> </td>
          <td>(</td>
          <td class="paramtype">struct nc_cpblts *&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Free NETCONF capabilities structure. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">c</td><td>Capabilities structure to free. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga2ea9b318015206d886c7e54386fc85e3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="../../db/d52/group__session.html#ga2ea9b318015206d886c7e54386fc85e3">nc_cpblts_add</a> </td>
          <td>(</td>
          <td class="paramtype">struct nc_cpblts *&#160;</td>
          <td class="paramname"><em>capabilities</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>capability_string</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Add another one capability string into the NETCONF capabilities structure. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">capabilities</td><td>Current NETCONF capabilities structure. </td></tr>
    <tr><td class="paramname">capability_string</td><td>Capability string to add. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>0 on success<br/>
 non-zero on error </dd></dl>

</div>
</div>
<a class="anchor" id="gacb59cf4fa78bf02c22afac395acf0693"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="../../db/d52/group__session.html#gacb59cf4fa78bf02c22afac395acf0693">nc_cpblts_remove</a> </td>
          <td>(</td>
          <td class="paramtype">struct nc_cpblts *&#160;</td>
          <td class="paramname"><em>capabilities</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>capability_string</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Remove specified capability string from the NETCONF capabilities structure. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">capabilities</td><td>Current NETCONF capabilities structure. </td></tr>
    <tr><td class="paramname">capability_string</td><td>Capability string to remove. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>0 on success<br/>
 non-zero on error </dd></dl>

</div>
</div>
<a class="anchor" id="gaa8325078c33d25a7cf48e1ed9d417ff4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="../../db/d52/group__session.html#gaa8325078c33d25a7cf48e1ed9d417ff4">nc_cpblts_enabled</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>capability_string</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if the given capability is supported by the session. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">session</td><td>Established session where the given capability support will be checked. </td></tr>
    <tr><td class="paramname">capability_string</td><td>NETCONF capability string to check. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>0 for false result, 1 if the given capability is supported. </dd></dl>

</div>
</div>
<a class="anchor" id="gabed55135f1868bef5f266737b8862aa4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="../../db/d52/group__session.html#gabed55135f1868bef5f266737b8862aa4">nc_cpblts_get</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_cpblts *&#160;</td>
          <td class="paramname"><em>c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>capability_string</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get complete capability string including parameters. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">c</td><td>Capabilities structure to be examined </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">capability_string</td><td>Capability identifier, parameters are ignored and only basic identifier is used to retrieve specific identifier including parameters from the given capability structure. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Constant capability identifier including parameters </dd></dl>

</div>
</div>
<a class="anchor" id="gae92c774e940114b4733f85e186d84620"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="../../db/d52/group__session.html#gae92c774e940114b4733f85e186d84620">nc_cpblts_iter_start</a> </td>
          <td>(</td>
          <td class="paramtype">struct nc_cpblts *&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Move NETCONF capabilities structure iterator to the beginning of the capability strings list. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">c</td><td>NETCONF capabilities structure to be iterated. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaea2ced8d4e5f2cc9971680e49f876c58"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="../../db/d52/group__session.html#gaea2ced8d4e5f2cc9971680e49f876c58">nc_cpblts_iter_next</a> </td>
          <td>(</td>
          <td class="paramtype">struct nc_cpblts *&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the next capability string from the given NETCONF capabilities structure. </p>
<p>To move iterator to the beginning of the capability strings list, use <a class="el" href="../../db/d52/group__session.html#gae92c774e940114b4733f85e186d84620" title="Move NETCONF capabilities structure iterator to the beginning of the capability strings list...">nc_cpblts_iter_start()</a>.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">c</td><td>NETCONF capabilities structure to be iterated. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Another capability string, NULL if all strings were already returned. </dd></dl>

</div>
</div>
<a class="anchor" id="ga79a7aea77cbfe29535eb83a6e5c60419"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="../../db/d52/group__session.html#ga79a7aea77cbfe29535eb83a6e5c60419">nc_cpblts_count</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_cpblts *&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get number of capabilities in structure. </p>
<p>Use this function to get count of capabilities held by nc_cpblts structure.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">c</td><td>NETCONF capabilities structure. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Number of capabilities held by structure c. </dd></dl>

</div>
</div>
<a class="anchor" id="ga6f39a278e3d907a0b26878df332ebc71"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">struct nc_cpblts* <a class="el" href="../../db/d52/group__session.html#ga6f39a278e3d907a0b26878df332ebc71">nc_session_get_cpblts_default</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">read</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get NULL terminated list of default capabilities supported by libnetconf. </p>
<p>Caller is supposed to free all returned strings.</p>
<dl class="section return"><dt>Returns:</dt><dd>NETCONF capabilities structure containing capabilities supported by libnetconf. </dd></dl>

</div>
</div>
<a class="anchor" id="ga13119fdaa84544bf254bdb35ffdf83e0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="../../db/d52/group__session.html#ga13119fdaa84544bf254bdb35ffdf83e0">nc_ssh_pref</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../db/d52/group__session.html#gad9081cbe1edde22e8612e07ba4c3be10">NC_SSH_AUTH_TYPE</a>&#160;</td>
          <td class="paramname"><em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">short int&#160;</td>
          <td class="paramname"><em>preference</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set preference of the SSH authentication methods. </p>
<p>Allowed authentication types are defined as NC_SSH_AUTH_TYPE type. Default preferences are:</p>
<ol type="1">
<li>interactive (3)</li>
<li>password (2)</li>
<li>public keys (1)</li>
</ol>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Setting preference for the given authentication type. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">preference</td><td>Preference value. Higher value means higher preference. Negative value disables the given authentication type. On equality of values, the last set authentication type is preferred. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gae3858d998d19cb2fb700b15fdf602f23"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">struct nc_session* <a class="el" href="../../db/d52/group__session.html#gae3858d998d19cb2fb700b15fdf602f23">nc_session_connect</a> </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>host</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned short&#160;</td>
          <td class="paramname"><em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>username</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const struct nc_cpblts *&#160;</td>
          <td class="paramname"><em>cpblts</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">read</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create NETCONF session to the specified server. </p>
<p>This function internally can use various callbacks set by client to perform SSH authentication. It selects authentication mechanism from the list provided by the SSH server and according to preferences set by client via <a class="el" href="../../db/d52/group__session.html#ga13119fdaa84544bf254bdb35ffdf83e0" title="Set preference of the SSH authentication methods.">nc_ssh_pref()</a>. Then, appropriate callback function (set by <a class="el" href="../../db/d52/group__session.html#ga28299d575ef4e234ed96bad5c4f086fb" title="Set callback function for passing user password into libssh2&#39;s password authentication method when co...">nc_callback_sshauth_password()</a>, <a class="el" href="../../db/d52/group__session.html#ga81ef9b1c1949bbffd86cbfd9aa159726" title="Set callback function for passing user password into libssh2&#39;s publickey authentication method when c...">nc_callback_sshauth_passphrase()</a>, <a class="el" href="../../db/d52/group__session.html#gae521c81f448de075a84f62388320ebae" title="Set path to publickey file used in case of SSH authentication via publickey mechanism.">nc_set_publickey_path()</a> or <a class="el" href="../../db/d52/group__session.html#ga66beddc668fcc5c3699165bf3d3fd089" title="Set path to privatekey file used in case of SSH authentication via publickey mechanism.">nc_set_privatekey_path()</a>) is used to perform authentication.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">host</td><td>Hostname or address (both Ipv4 and IPv6 are accepted). 'localhost' is used by default if NULL is specified. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">port</td><td>Port number of the server. Default value 830 is used if 0 is specified. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">username</td><td>Name of the user to login to the server. The user running the application (detected from the effective UID) is used if NULL is specified. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cpblts</td><td>NETCONF capabilities structure with capabilities supported by the client. Client can use <a class="el" href="../../db/d52/group__session.html#ga6f39a278e3d907a0b26878df332ebc71" title="Get NULL terminated list of default capabilities supported by libnetconf.">nc_session_get_cpblts_default()</a> to get the structure with the list of all capabilities supported by libnetconf (this is used in case of NULL parameter). </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Structure describing the NETCONF session or NULL in case of error. </dd></dl>

</div>
</div>
<a class="anchor" id="gad0e758dfee764ae9c2a032e0151c6707"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">struct nc_session* <a class="el" href="../../db/d52/group__session.html#gad0e758dfee764ae9c2a032e0151c6707">nc_session_accept</a> </td>
          <td>(</td>
          <td class="paramtype">const struct nc_cpblts *&#160;</td>
          <td class="paramname"><em>capabilities</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">read</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Accept NETCONF session from a client. </p>
<p>The caller process of this function is supposed to run as SSH Subsystem application launched automatically by SSH server when the NETCONF subsystem request comes to the SSH server. Only one NETCONF session can be accepted in the single SSH Subsystem.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">capabilities</td><td>NETCONF capabilities structure with capabilities supported by the server. Caller can use <a class="el" href="../../db/d52/group__session.html#ga6f39a278e3d907a0b26878df332ebc71" title="Get NULL terminated list of default capabilities supported by libnetconf.">nc_session_get_cpblts_default()</a> to get the structure with the list of all capabilities supported by libnetconf (this is used in case of NULL parameter). </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>Structure describing the accepted NETCONF session or NULL in case of error. </dd></dl>

</div>
</div>
</div><!-- contents -->
</div>
  <div id="nav-path" class="navpath">
    <ul>

    <li class="footer">Generated on Fri Aug 3 2012 08:25:37 for libnetconf by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.0-20120409 </li>
   </ul>
 </div>


</body>
</html>
